<h2>Liste d'amis</h2>
<?php

// auteur : zulad

    require_once (DIR_INCLUDE.'/sajax.inc.php');

    function getAmi($type)
    {
        global $pdo;
        
        switch($type)
        {
            case 'ami':
                $sql = 'SELECT * FROM forum_amis WHERE ami_confirm="1" AND (ami_ignore != "1" OR ami_ignore IS NULL) AND (ami_from OR ami_to='.$_SESSION['id'].') GROUP BY ami_to';
                $q = $pdo->query($sql);
                $value = $type."-2-2-";
				
				$value .= '';
				$mod = 5;//5 amis par ligne
				$compteur = 0;
				
                foreach($q as $v)
                {
					if($compteur > 0 && $compteur%$mod==0)
						$value .= 'Amis
						           Amis Avatar
								   Amie ignorer
								   Amis en cours
								   Amis en suprimer
								   ';
					
					if($v['ami_to'] == $_SESSION['id'])
						$ami = $v['ami_from'];
					else
						$ami = $v['ami_to'];
						
                    $value .= ''.  sex2color(id2sex($ami), $ami).'
					            ' . getAvatarById($ami).'
								<a href="'.getLienModule("membre","friendlist").'?cmd=ignore_ami&aID='.$v['ami_id'].'">Ignorer</a>
								<a href="'.getLienModule("membre","friendlist").'?cmd=delete_ami&aID='.$v['ami_id'].'">Supprimer</a>';
					$compteur++;
                }
				
				$value .= '';
				
				
				
					if($q->rowCount() < 1)
						$value .= 'Vous n\'avez pas encore d\'amis.';
				
					
                break;
            
            case 'ignore':
                $sql = 'SELECT * FROM forum_amis WHERE (ami_confirm="1" OR ami_confirm="0") AND ami_ignore = "1" AND (ami_from='.$_SESSION['id'].' OR ami_to='.$_SESSION['id'].') GROUP BY ami_id';
                $q = $pdo->query($sql);
                $value = $type."-2-2-";
               $value .= '';
				$mod = 5;//5 amis par ligne
				$compteur = 0;
				
                foreach($q as $v)
                {
					if($compteur > 0 && $compteur%$mod==0)
						$value .= '';
					
					if($v['ami_to'] == $_SESSION['id'])
						$ami = $v['ami_from'];
					else
						$ami = $v['ami_to'];
						
                   $value .= '<div class="bloc_des_cadres">
					            <div class="parente">
								<div class="amie_avatar">' . getAvatarById($ami).'</div>
								<div class="amie_pseudo">'.  sex2color(id2sex($ami), $ami).'</div>
								<div class="amie_depuis">mettre date</div>
								<div class="amie_connexion">date de connextion</div>
								<div class="amie_supprimer">supprimer</div>
								</div></div>';
					
					$compteur++;
                }
				
				$value .= '';
				
					if($q->rowCount() < 1)
						$value .= 'Vous n\'avez pas encore ignoré d\'amis.';
					
					
                break;
            
            case 'aValider':
                $sql = 'SELECT * FROM forum_amis WHERE ami_confirm="0" AND (ami_ignore != "1" OR ami_ignore IS NULL) AND(ami_from OR ami_to='.$_SESSION['id'].') GROUP BY ami_id';
                $q = $pdo->query($sql);
                $value = $type."-2-2-";
               $value .= '';
				$mod = 5;//5 amis par ligne
				$compteur = 0;
				
                foreach($q as $v)
                {
					if($compteur > 0 && $compteur%$mod==0)
						$value .= '';
					
					if($v['ami_to'] == $_SESSION['id'])
						$ami = $v['ami_from'];
					else
						$ami = $v['ami_to'];
						
                    $value .= '<div class="bloc_des_cadres">
					            <div class="parente">
								<div class="amie_avatar">' . getAvatarById($ami).'</div>
								<div class="amie_pseudo">'.  sex2color(id2sex($ami), $ami).'</div>
								<div class="amie_depuis">mettre date</div>
								<div class="amie_connexion">date de connextion</div>
								<div class="amie_supprimer">supprimer</div>
								</div></div>';
								
					if($v['ami_from']!=$_SESSION['id']){
						$value .= '<a href="'.getLienModule("membre","friendlist").'?cmd=accept_ami&aID='.$v['ami_id'].'">Valider</a>';
					}else{
						$value .= 'En attente';
						//$value .= '<a href="'.getLienModule("membre","friendlist").'?cmd=accept_ami&aID='.$v['ami_id'].'">Valider</a>';
					}
					
					$value .= '';
					$compteur++;
                }
				
				$value .= '';
					
					if($q->rowCount() < 1)
						$value .= 'Vous n\'avez pas de lien d\'amitié à valider.';
						
				
                break;
        }
        
        return $value;
    }
    
    function setAmi($command)
    {
        global $pdo;
        
        $command = explode('-',$command);
        
        if($command[0])
            $pdo->query('UPDATE forum_amis SET ami_confirm='.$command[0].' WHERE ami_from='.$command[1].' AND ami_to='.$command[2]);
        else
            $pdo->query('DELETE FROM forum_amis WHERE ami_from='.$command[1].' AND ami_to='.$command[2]);
        
        return sex2color(id2sex($command[2]),$command[2]) . ' a été ' . ($command[0]?'ajouté':'rejeté');
        
    }
    
    sajax_init();
    $sajax_debug_mode = 1;
    sajax_export("getAmi","setAmi");
    sajax_handle_client_request();
    
    echo '<script>'
    		.sajax_get_javascript()
	.'</script>';
    
    echo '<script type="text/javascript">
        
            function do_getAmi_cb(z) {
            	//alert(z);
                var value = z.split("-2-2-");
                document.getElementById(value[0]).innerHTML = value[1];
            }

            function do_getAmi(type) {
                document.getElementById("iContainer").value = type;
                x_getAmi(type, do_getAmi_cb);
            }
            
            function do_setAmi_cb(z) {
                document.getElementById("iMsg").innerHTML = z;
                do_getAmi("ami"); do_getAmi("ignore"); do_getAmi("aValider");
            }
            
            function do_setAmi(target,cmd) {
                document.getElementById("tableList").removeChild(document.getElementById("_"+target));
                x_setAmi(cmd, do_setAmi_cb);
            }
        
         </script>';

	function getFriendList($confirmed)
	{
		global $pdo;
		$confirmed = ($confirmed) ? '1' : '0';
			$req = $pdo->prepare("SELECT ami_date as date, ami_to,ami_from,ami_id,fm.membre_pseudo as name FROM forum_amis JOIN forum_membres as fm ON fm.membre_id=ami_to OR fm.membre_id=ami_from WHERE (ami_to=? OR ami_from=?) AND ami_confirm=? GROUP BY ami_id");
			$req->execute(array($_SESSION['id'],$_SESSION['id'],$confirmed));
			
		return $req;
	}
 
        echo '<div id="iMsg"></div>
		      <input type="hidden" value="ami" id="iContainer" />
			  <div class="bloc_des_cadres"><div class="texte_centrer">Amis connectés (3)</div></div>
			  <div class="bloc_des_cadres">
			  <div class="parente">
			  <div class="amie_avatar">Avatar</div>
			  <div class="amie_pseudo">Pseudo</div>
			  <div class="amie_depuis">Ami depuis</div>
			  <div class="amie_connexion">Date de dernière connexion</div>
			  <div class="amie_supprimer">Supprimer</div>
			  <div id="ami"></div>
              </div></div>     
			  <div class="bloc_des_cadres"><div class="texte_centrer">Amis en ligne (3)</div></div>
			  <div class="bloc_des_cadres">
			  <div class="parente">
			  <div class="amie_avatar">Avatar</div>
			  <div class="amie_pseudo">Pseudo</div>
			  <div class="amie_depuis">Ami depuis</div>
			  <div class="amie_connexion">Date de dernière connexion</div>
			  <div class="amie_supprimer">Supprimer</div>
			  <div id="ami"></div>
              </div></div>     
			  <div class="bloc_des_cadres"><div class="texte_centrer">Amis En cours (3)</div></div>
			  <div class="bloc_des_cadres">
			  <div class="parente">
			  <div class="amie_avatar">Avatar</div>
			  <div class="amie_pseudo">Pseudo</div>
			  <div class="amie_depuis">Ami depuis</div>
			  <div class="amie_connexion">Date de dernière connexion</div>
			  <div class="amie_supprimer">Supprimer</div>
			  <div id="ignore"></div>
              </div></div>';        
        $table = '';
        $table .= 'Demande d\'amitié en cours ...
		           Pseudo
				   Date de demande
				   Action
				   ';
        
        $j = false;$i=0;
        $data = getFriendList(false);
		/*
	while($friend_nc = $data->fetch()){
              $i++;
		if($friend_nc['ami_to'] != $_SESSION['id'])
			$id = $friend_nc['ami_to'];
		else
			$id = $friend_nc['ami_from'];
		
			$pseudo = sex2color(id2sex($id),$id);
			
			if($friend_nc['ami_from'] == $_SESSION['id'])
                            $action = '<a onclick="do_setAmi(\''.$i.'\',\'1-'.$friend_nc['ami_from'].'-'.$friend_nc['ami_to'].'\');" style="cursor:pointer;">Accepter la demande</a> | <a onclick="do_setAmi(\''.$i.'\',\'0-'.$friend_nc['ami_from'].'-'.$friend_nc['ami_to'].'\');" style="cursor:pointer;">Refuser la demande</a>';
		$table .= '<tr id="_'.($i).'">
                                <td>' . getAvatarById($id) . $pseudo . '</td>
                                <td>' . format_temps($friend_nc['date']) . '</td>
                                <td>' . $action . '</td>
                           </tr>';
		$j = true;
        }

        if(!$j){
            $table .= '
            <tr>
                    <td colspan="3">Aucune demande d\'amitié pour le moment</td>
            </tr>';
        }
	*/
			if(isset($_GET['cmd']) && isset($_GET['aID'])){
				if($_GET['cmd'] == 'accept_ami'){
					$query = $pdo->prepare('SELECT * FROM forum_amis WHERE ami_id=?');
					$query->execute(array($_GET['aID']));
						
						if($query->rowCount() > 0){
							$data = $query->fetch();
							$pdo->query("SET NAMES UTF8");
							$query = $pdo->prepare("UPDATE forum_amis SET ami_confirm='1' WHERE ami_id=?");
							$query->execute(array($_GET['aID']));
							
							$pdo->query("SET NAMES UTF8");
							sendMp($data['ami_from'],"Demande d'amitié accepté","Bonjour ". sex2color(id2sex($data['ami_from']),$data['ami_from'])."\nLe membre ".  sex2color(id2sex($data['ami_to']),$data['ami_to']). " à accepté de faire parti de vos amis\nVous et lui êtes maintenant ami.");
								header("location:".getLienModule("membre","friendlist"));	
						}else{
							redirect("Erreur : ID de la demande d'amitié innexistante !",getLienModule("membre","friendlist"));	
						}
						
				}
				
				else if($_GET['cmd'] == 'ignore_ami'){
					$query = $pdo->prepare('SELECT * FROM forum_amis WHERE ami_id=? AND ami_confirm="1"');
					$query->execute(array($_GET['aID']));
						
						if($query->rowCount() > 0){
							$data = $query->fetch();
							$pdo->query("SET NAMES UTF8");
							$query = $pdo->prepare("UPDATE forum_amis SET ami_ignore='1' WHERE ami_id=?");
							$query->execute(array($_GET['aID']));
							
							$pdo->query("SET NAMES UTF8");
							//sendMp($data['ami_from'],"Demande d'amitié accepté","Bonjour ". sex2color(id2sex($data['ami_from']),$data['ami_from'])."\nLe membre ".  sex2color(id2sex($data['ami_to']),$data['ami_to']). " à accepté de faire parti de vos amis\nVous et lui êtes maintenant ami.");
								header("location:".getLienModule("membre","friendlist"));	
						}else{
							redirect("Erreur : ID de la demande d'amitié innexistante ou vous ne pouvez ignorer un membre qui n'est pas votre ami !",getLienModule("membre","friendlist"));	
						}
						
				}
				
				else if($_GET['cmd'] == 'delete_ami'){
					$query = $pdo->prepare('SELECT * FROM forum_amis WHERE ami_id=? AND ami_confirm="1"');
					$query->execute(array($_GET['aID']));
						
						if($query->rowCount() > 0){
							$data = $query->fetch();
							$pdo->query("SET NAMES UTF8");
							$query = $pdo->prepare("DELETE FROM forum_amis WHERE ami_id=?");
							$query->execute(array($_GET['aID']));
							
							$pdo->query("SET NAMES UTF8");
							
							if($data['ami_from']!=$_SESSION['id'])
								$ami = $data['ami_from'];
							else
								$ami = $data['ami_to'];
								
							sendMp($ami,"Amitié supprimé","Bonjour ". sex2color(id2sex($ami),$ami)."\nLe membre ".  sex2color(id2sex($_SESSION['id']),$_SESSION['id']). " vous à supprimé de sa liste d'amis\nVous et lui n'êtes maintenant plus ami.");
								header("location:".getLienModule("membre","friendlist"));	
						}else{
							redirect("Erreur : ID de la demande d'amitié innexistante ou vous ne pouvez pas supprimer un ami qui n'a pas encore accepté votre demande d'amitié !",getLienModule("membre","friendlist"));	
						}
						
				}else
					redirect("Commande non reconnue !",getLienModule("membre","friendlist"));	
				
			}
			
        if($j)
        {
                echo $table . "\n</tbody></table>";
        }
       
        echo '<script type="text/javascript">

                window.onload = function()
                {
                	
                    do_getAmi("ami");
                    do_getAmi("ignore");
                    do_getAmi("aValider");
                }

            </script>';